
#ifndef _Shield_H_
#define _Shield_H_

#include "Ship.h"
#include "Utils/Vector2D.h"
#include "Graphics/ParticleSystem/ParticleSystem.h"
#include "Graphics/ParticleSystem/ParticleEmitter.h"

#include <list>

class Shield {
  public:
    Shield(Ship *pship);
    ~Shield();

    void render(void);
    void update(void);

    void energise(Vector2D contact_point);

  private:
    Ship *parent_ship;
    std::list<ParticleSystem*> spalling;


    void removeInactiveSpall(void);
};

#endif

